package ch.jamme.conf;

import java.lang.reflect.*;

import org.jdom.*;

/**
 * Create an empty Object that fits the specified Field starting from its description expressed as a JDOM Element
 * @author Mario Fusco
 */
public interface ObjectCreator {

	/**
	 * Creates an Object represented as a JDOM Element and compatible with the given Field
	 * @param element The JDOM Element representing the Object
	 * @param objectClass The Class of the object to be created
	 * @param field The Field where the object will need to be set
	 * @return An Object with the given representation as JDOM Element and compatible with the given Field
	 */
	public Object createObject(Element element, Class<?> objectClass, Field field);
	
}
